home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 6 / CU Amiga Magazine's Super CD-ROM 06 (1996)(EMAP Images)(GB)(Track 1 of 4)[!][issue 1997-01].iso / cucd / online / fidonetts / fts-0008.ext < prev    next >
Text File  |  1990-10-15  |  27KB  |  465 lines

  1. Document: FTS-0008
  2. Version:  003
  3. Date:     15-Oct-1990
  4. Updates:  FTS-0001
  5.  
  6.  
  7.  
  8.                   An Enhanced FidoNet(r) Technical Standard
  9.                  Extending FTS-0001 to include Bark requests
  10.  
  11.                             October 15, 1990
  12.  
  13.  
  14.  
  15.  
  16. Status of this document:
  17.  
  18.     This document specifies an optional standard for the FidoNet community.
  19.     Implementation of the protocols defined in this document is not mandatory,
  20.     but all implementations of these protocols are expected to adhere to this
  21.     standard.  Distribution of this document is subject to the limitations of
  22.     the copyright notice displayed below.
  23.  
  24.  
  25.     Copyright 1989-90 by Philip L. Becker.  Portions of this document are
  26.     copyright 1986-90 by Randy Bush and are incorporated with his consent.
  27.     All rights reserved.  A right to distribute only without modification and
  28.     only at no charge is granted.  Under no circumstances is this document to
  29.     be reproduced or distributed as part of or packaged with any product or
  30.     other sales transaction for which any fee is charged.  Any and all other
  31.     reproduction or excerpting requires the explicit written consent of the
  32.     copyright holders.
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  A. Introduction
  68.  
  69.  1. This Document
  70.  
  71.     This document describes the standard for "Bark" type FidoNet file
  72.     request operation.  Bark file requests are an extension to the basic
  73.     FTS-0001 mail session, and this document presents these requests as a
  74.     modification to that document.
  75.  
  76.  2. What are File Requests?
  77.  
  78.     File Requests are a way of requesting that a specific file be sent during
  79.     a FidoNet mail session.  This has many advantages over simply logging on to
  80.     a BBS and downloading a file:
  81.  
  82.        o  You need not be a validated user
  83.  
  84.        o  You don't have to spend time searching for the file on the BBS
  85.  
  86.        o  You can schedule the file request to take place at any time without
  87.           your being near your computer.
  88.  
  89.     There are two commonly used types of file requests on FidoNet today, WaZOO
  90.     and Bark requests.  WaZOO requests are used by Opus and BinkleyTerm, and
  91.     are not documented here.  See the document FTS-0006 by V. Perriello for a
  92.     description of these.   Bark requests were the first file request extension
  93.     to the FTS-0001 protocol, and are supported (at least partially) by many
  94.     mailers, including SEAdog, Dutchie, BinkleyTerm, and to a certain extent
  95.     Opus.  This document describes how to implement Bark-type file requests.
  96.  
  97.  
  98.  B. Terms Used in this Document
  99.  
  100.  1. The diagrams and notations used in this document are the same as those used
  101.     in the FTS-0001 document.  Please see FTS-0001 for a description of these.
  102.     This document should be considered as an extension to the FTS-0001 session
  103.     layer protocol, and you will require FTS-0001 in addition to this document
  104.     to fully understand what is presented here.
  105.   
  106.     In addition to the data description language described in FTS-0001 section
  107.     A.4, one extra terminal used in this notation:
  108.   
  109.     (* terminals *)
  110.     someName<max> - String of up to max chars, NOT null terminated
  111.  C. Performing File Requests
  112.  
  113.  1. Introduction
  114.  
  115.     A Bark request consists of transmitting a special Bark Request packet which
  116.     contains a filename, a date (used for update requests), and optionally a
  117.     password.  The system receiving the request then decides if it can send the
  118.     requested file or not, and if it can does so using the same protocol used
  119.     to send attached files.  Bark request handling is always controlled by the
  120.     answering system, and consists of two phases.  In phase one, the receiving
  121.     system asks the calling system to honor requests it may have to ask for
  122.     files from the caller.  In phase two, the receiving system allows the
  123.     calling system to request files from it.
  124.  
  125.     Update file requests are the same as normal file requests, with one
  126.     exception.  If the date in the Bark Request packet (described below) is
  127.     greater than or equal to the date of the actual file requested, the file
  128.     will not be sent.  The requestor should set the date to the date of the
  129.     the actual file on its own end if an update request is desired.
  130.  
  131.  
  132.  D. The Bark Request Packet
  133.  
  134.  1. Data Link Layer Data Definition.
  135.  
  136.     The Bark Request packet is a variable-sized packet containing a header, a
  137.     filename, a date (which is used only for update requests - in a normal file
  138.     request it's 0) and an optional password. When receiving a Bark Request
  139.     packet, the ETX may be used to determine the end of the data portion. Note
  140.     that the CRC is sent in the reverse byte order of a normal CRC XMODEM data
  141.     block (see FTS-0001 section G.1).
  142.  
  143.     Note: some systems will send a password in the data block even if none is
  144.     needed.  Incoming passwords should be ignored unless the other system is
  145.     trying to request a passworded file.
  146.  
  147.   
  148.  
  149.                           Bark File Request Packet
  150.       Offset
  151.       dec hex
  152.               ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
  153.         0   0 ³       ACK - Start of Bark Request - 06H       ³
  154.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  155.         1   1 ³     Filename - Packed DOS file format         ³
  156.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  157.         n   n ³              SPACE - 20H                      ³
  158.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  159.         n   n ³              Date (0 if not Update Request)   ³
  160.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  161.         n   n ³      SPACE - 20H  (only if pswd follows)      ³
  162.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  163.         n   n ³         Password (optional)                   ³
  164.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  165.         n   n ³       ETX -  End of RESYNC packet  - 03H      ³
  166.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  167.         n   n ³     (*1)     CRC  low order byte              ³
  168.               ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
  169.         n   n ³     (*1)     CRC high order byte              ³
  170.               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
  171.  
  172.               *1 - CRC does not include the ACK or ETX and is
  173.                    in the reverse byte order from the CRC in a
  174.                    normal XMODEM data packet.
  175.  2. Data Description Notation of Bark Request Packet
  176.  
  177.     DataBlock (no password) = ACK
  178.                               Filename<12>
  179.                               Space
  180.                               Date<11>
  181.                               ETX
  182.                               CRC
  183.   
  184.     DataBlock (with password) = ACK
  185.                                 Filename<12>
  186.                                 Space
  187.                                 Date<11>
  188.                                 Space
  189.                                 Password<6|8>
  190.                                 ETX
  191.                                 CRC
  192.   
  193.     ACK   = 06H       (* Header for file request block *)
  194.     Space = 20H       (* Space character *)
  195.     ETX   = 03H       (* End of block *)
  196.   
  197.     Filename          (* Name of file requested *)
  198.     Date              (* ASCII string; the number of seconds
  199.                          since midnight, January 1, 1970 *)
  200.     Password          (* The password needed to request this
  201.                          file, if any.  Maximum length is 6 for
  202.                          BinkleyTerm and Opus, 8 for SEAdog
  203.                          and Dutchie. *)
  204.   
  205.     CRC = crc[2]      (* CCITT Cyclic Redundancy Check.  The
  206.                          same algorithm as used for XModem
  207.                          CRCs.  The CRC is calculated on
  208.                          all data in the block between but
  209.                          not including the ACK and the ETX *)
  210.  E. Session Layer Protocol:
  211.  
  212.     This section describes the modified FTS-0001 session layer protocol.  This
  213.     is the only area of FTS-0001 which is modified to implement Bark style file
  214.     requests.  File Requests are performed at the end of the normal FidoNet
  215.     mail session, after any mail pickup is performed.
  216.  
  217.     The diagrams below desribe the session level protocol with Bark file
  218.     requests implemented.  The state tables have been broken into subroutines
  219.     but the FTS-0001 portion is not functionally changed.  FTS-0001 sender
  220.     states S4 through S7 are now table "Send Mail SM0".  FTS-0001 receiver
  221.     states R3 through R6 are now table "Receive Mail RM0".  They are not
  222.     functionally changed in any way from FTS-0001, they are just broken out
  223.     to allow them to be used as subroutines.  Finally Sender states S0 through
  224.     S3 are unchanged, as are Receiver states R0 through R2.
  225.  
  226.     The remaining FTS-0001 states are enhanced to implement the Bark file
  227.     request protocol. In addition, the subroutine state tables "Send Bark SB0"
  228.     and "Receive Bark RB0" have been added to handle the actual file requests.
  229.  
  230.     The following diagrams fully replace the Session Layer protocol state
  231.     tables in FTS-0001.  No other changes to FTS-0001 are required to implement
  232.     the Bark File request feature.
  233.     Sender  (Top level)
  234.  
  235.     ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄ¿
  236.     ³State³ State    ³ Predicate(s)            ³ Action(s)               ³ Next³
  237.     ³  #  ³ Name     ³                         ³                         ³ St  ³
  238.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  239.     ³ S0  ³ SendInit ³                         ³ dial modem              ³ S1  ³
  240.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  241.     ³ S1  ³ WaitCxD  ³1³ carrier detected      ³ delay 1-5 seconds       ³ S2  ³
  242.     ³     ³  (*1)    ³ ³                       ³ Set SLO if > 2400bps,   ³     ³
  243.     ³     ³          ³ ³                       ³ Reset SLO if <= 2400bps ³     ³
  244.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  245.     ³     ³          ³2³ busy, etc.            ³ report no connection    ³ exit³
  246.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  247.     ³     ³          ³3³ voice                 ³ report no carrier       ³ exit³
  248.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  249.     ³     ³          ³4³ carrier not detected  ³ report no connection    ³ exit³
  250.     ³     ³          ³ ³ within 60 seconds     ³                         ³     ³
  251.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  252.     ³ S2  ³ WhackCRs ³1³ over 30 seconds       ³ report no response <cr> ³ exit³
  253.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  254.     ³     ³          ³2³ ?? <cr>s received     ³ delay 1 sec             ³ S3  ³
  255.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  256.     ³     ³          ³3³ <cr>s not received    ³ send <cr> <sp> <cr> <sp>³ S2  ³
  257.     ³     ³          ³ ³                       ³   delay ??? secs        ³     ³
  258.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  259.     ³ S3  ³ WaitClear³1³ no input for 0.5 secs ³ send TSYNCH = AEH       ³ S4  ³
  260.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  261.     ³     ³          ³2³ over 60 seconds       ³ hang up, report garbage ³ exit³
  262.     ³     ³          ³ ³ and line not clear    ³                         ³     ³
  263.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  264.     ³ S4  ³ SendMail ³                         ³ (Send Mail SM0)         ³ S5  ³
  265.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  266.     ³ S5  ³ TryPickup³1³ Rcv TSYNC             ³ (Receive Mail RM0)      ³ S5  ³
  267.     ³     ³   (*2)   ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  268.     ³     ³          ³2³ Rcv SYN               ³ (Receive Bark Req RB0)  ³ S5  ³
  269.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  270.     ³     ³          ³3³ Rcv ENQ               ³ (Do Bark Requests SB0)  ³ S5  ³
  271.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  272.     ³     ³          ³4³ Rcv 'C' or NAK        ³ Send EOT                ³ S5  ³
  273.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  274.     ³     ³          ³5³ Rcv Other Char        ³ Send SUB                ³ S5  ³
  275.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  276.     ³     ³          ³6³ No Data for 45 secs   ³ Hang Up                 ³ exit³
  277.     ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÙ
  278.  
  279.     *1 - This state is shown for the extended SEAlink protocol.  Omit the
  280.          set/reset SLO actions if adding Bark to a strict FTS-0001 protocol
  281.          implementation, or if not implementing overdrive in SEAdog.
  282.    
  283.     *2 - To refuse to pickup mail (S5.1) may send a CAN and stay in (S5).
  284.  
  285.     Note: Although the above shows the sender emitting only one TSYNCH, it is
  286.     recommended that a timeout of 5-20 seconds should initiate another TSYNCH.
  287.     The receiver should tolerate multiple TSYNCHs.
  288.     Receiver (Top Level)
  289.  
  290.     The  receiving FSM is given  an external timer, the expiration of  which
  291.     will cause termination with a result of 'no calls' (R0.2).
  292.     ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄ¿
  293.     ³State³ State    ³ Predicate(s)            ³ Action(s)               ³ Next³
  294.     ³  #  ³ Name     ³                         ³                         ³ St  ³
  295.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  296.     ³ R0  ³ WaitCxD  ³1³ carrier detected      ³                         ³ R1  ³
  297.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  298.     ³     ³          ³2³ external timer expires³ report no calls         ³ exit³
  299.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  300.     ³ R1  ³ WaitBaud ³1³ baud rate detected    ³ send signon with <cr>s  ³ R2  ³
  301.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  302.     ³     ³          ³2³ no detect in ?? secs  ³ hang up, report no baud ³ exit³
  303.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  304.     ³ R2  ³ WaitTsync³1³ TSYNCH received       ³ ignore input not TSYNCH ³ R3  ³
  305.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  306.     ³     ³          ³2³ 60 seconds timeout    ³ hang up, report not Fido³ exit³
  307.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  308.     ³ R3  ³ RecMail  ³                         ³ (Receive Mail RM0)      ³ R4  ³
  309.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  310.     ³ R4  ³ AllowPkup³1³ Have pickup for sender³ Send Tsync,             ³ R5  ³
  311.     ³     ³          ³ ³                       ³   Set T1=1 sec          ³     ³
  312.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  313.     ³     ³          ³2³ No pickup for sender  ³                         ³ R6  ³
  314.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  315.     ³ R5  ³ WtPickup ³1³ Rcv NAK or 'C'        ³ (Send Mail SM0)         ³ R6  ³
  316.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  317.     ³     ³          ³2³ Rcv SUB               ³ Send Tsync,             ³ R5  ³
  318.     ³     ³          ³ ³                       ³   Set T1=1 sec          ³     ³
  319.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  320.     ³     ³          ³3³ Rcv CAN               ³ Report Mail Refused     ³ R6  ³
  321.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  322.     ³     ³          ³4³ T1 expired            ³ Send Tsync,             ³ R5  ³
  323.     ³     ³          ³ ³                       ³   Set T1=1 sec          ³     ³
  324.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  325.     ³     ³          ³5³ 45 secs in R5         ³ Hang Up, report error   ³ exit³
  326.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  327.     ³ R6  ³ AskBark  ³1³ Wish to make requests ³ Send SYN                ³ R7  ³
  328.     ³     ³   (*1)   ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  329.     ³     ³          ³2³ No requests to make   ³                         ³ R8  ³
  330.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  331.     ³ R7  ³ DoRequest³1³ Rcv CAN               ³ Report Requests Refused ³ R8  ³
  332.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  333.     ³     ³          ³2³ Rcv ENQ               ³ (Send Bark SB0)         ³ R8  ³
  334.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  335.     ³     ³          ³3³ Rcv SUB               ³ Send SYN                ³ R7  ³
  336.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  337.     ³     ³          ³4³ Rcv NAK or 'C'        ³ Send EOT                ³ R6  ³
  338.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  339.     ³     ³          ³5³ Rcv Other             ³ eat character           ³ R7  ³
  340.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  341.     ³     ³          ³6³ 5 sec, no input       ³ Send SYN                ³ R7  ³
  342.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  343.     ³     ³          ³7³ 45 secs in R7         ³                         ³ R8  ³
  344.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  345.     ³ R8  ³ WtPickup ³1³ Allow File Request    ³ (Receive Bark RB0),     ³ exit³
  346.     ³     ³          ³ ³                       ³   Hang Up               ³     ³
  347.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  348.     ³     ³          ³2³ Disallow Requests     ³ Hang Up                 ³ exit³
  349.     ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÙ
  350.     *1 - Some implementations always do (R6.1) even if they have no requests.
  351.     Sender - Send Mail
  352.  
  353.     ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄ¿
  354.     ³State³ State    ³ Predicate(s)            ³ Action(s)               ³ Next³
  355.     ³  #  ³ Name     ³                         ³                         ³ St  ³
  356.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  357.     ³ SM0 ³ SendMail ³                         ³ (XMODEM send packet XS0)³ SM1 ³
  358.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  359.     ³ SM1 ³ CheckMail³1³ XMODEM successful     ³ (Fido registers success)³ SM2 ³
  360.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  361.     ³     ³          ³2³ XMODEM fail or timeout³ hang up, report mail bad³ exit³
  362.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  363.     ³ SM2 ³ SendFiles³                         ³ (BATCH send files BS0)  ³ SM3 ³
  364.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  365.     ³ SM3 ³ CheckFile³1³ BATCH send successful ³ report success          ³ exit³
  366.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  367.     ³     ³          ³2³ BATCH send failed     ³ hang up, rept files fail³ exit³
  368.     ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÙ
  369.  
  370.  
  371.  
  372.     Sender - Send Bark
  373.  
  374.     ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄ¿
  375.     ³State³ State    ³ Predicate(s)            ³ Action(s)               ³ Next³
  376.     ³  #  ³ Name     ³                         ³                         ³ St  ³
  377.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  378.     ³ SB0 ³ SendBark ³1³ File to request       ³ Build Bark Request Pkt, ³ SB1 ³
  379.     ³     ³          ³ ³                       ³   Set tries = 0         ³     ³
  380.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  381.     ³     ³          ³2³ No more files to req  ³ Send ETB                ³ exit³
  382.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  383.     ³ SB1 ³ AskFile  ³                         ³ Send Bark Packet        ³ SB2 ³
  384.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  385.     ³ SB2 ³ RcvFile  ³1³ Rcv ACK               ³ (Batch Receive BR0)     ³ SB3 ³
  386.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  387.     ³     ³          ³2³ Tries > 5             ³ Send ETB, report failed ³ exit³
  388.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  389.     ³     ³          ³3³ Rcv Other             ³ Purge input, Incr tries ³ SB1 ³
  390.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  391.     ³     ³          ³4³ 10 sec w/o ACK        ³ Incr tries              ³ SB1 ³
  392.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  393.     ³ SB3 ³ NxtFile  ³1³ Rcv ENQ               ³                         ³ SB0 ³
  394.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  395.     ³     ³          ³2³ Rcv Other             ³ Purge Input             ³ SB3 ³
  396.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  397.     ³     ³          ³3³ 5 sec, no input       ³ Send SUB                ³ SB3 ³
  398.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  399.     ³     ³          ³4³ 45 sec in SB3         ³ Hang up, report error   ³ exit³
  400.     ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÙ
  401.     Sender & Receiver - Receive Mail
  402.  
  403.     ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄ¿
  404.     ³State³ State    ³ Predicate(s)            ³ Action(s)               ³ Next³
  405.     ³  #  ³ Name     ³                         ³                         ³ St  ³
  406.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  407.     ³ RM0 ³ RecMail  ³                         ³ (XMODEM rec packet XR0) ³ RM1 ³
  408.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  409.     ³ RM1 ³ XRecEnd  ³1³ XMODEM successful     ³ delay 1 second          ³ RM2 ³
  410.     ³     ³          ³ ³                       ³   flush input           ³     ³
  411.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  412.     ³     ³          ³2³ XMODEM failed         ³ hang up, rept mail fail ³ exit³
  413.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  414.     ³ RM2 ³ RecFiles ³                         ³ (BATCH rec files BR0)   ³ RM3 ³
  415.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  416.     ³ RM3 ³ ChkFiles ³1³ BATCH recv successful ³ delay 2 secs, rprt good ³ exit³
  417.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  418.     ³     ³          ³2³ BATCH recv failed     ³ hang up, report bad file³ exit³
  419.     ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÙ
  420.  
  421.  
  422.     Sender & Receiver - Receive Bark
  423.  
  424.     ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄ¿
  425.     ³State³ State    ³ Predicate(s)            ³ Action(s)               ³ Next³
  426.     ³  #  ³ Name     ³                         ³                         ³ St  ³
  427.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  428.     ³ RB0 ³ HonorReq ³1³ Ok to honor request   ³ Purge Input, Send ENQ,  ³ RB1 ³
  429.     ³     ³          ³ ³                       ³   Set T1 = 2 seconds    ³     ³
  430.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  431.     ³     ³          ³2³ Don't wish to honor   ³ Send CAN                ³ exit³
  432.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  433.     ³ RB1 ³ WaitBark ³1³ Got ACK               ³ Rcv Bark Packet (*1)    ³ RB2 ³
  434.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  435.     ³     ³          ³2³ Got ETB               ³ Report done             ³ exit³
  436.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  437.     ³     ³          ³3³ Got ENQ               ³ Send ETB                ³ RB0 ³
  438.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  439.     ³     ³          ³4³ T1 expired            ³ Purge Input, Send ENQ,  ³ RB1 ³
  440.     ³     ³          ³ ³                       ³   Set T1 = 2 seconds    ³     ³
  441.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  442.     ³     ³          ³5³ 20 seconds in RB1     ³ Hang Up, Report error   ³ exit³
  443.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  444.     ³ RB2 ³ AckBark  ³1³ Bark Pkt Rcvd Good    ³ Send ACK                ³ RB3 ³
  445.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  446.     ³     ³          ³2³ Bark Pkt Rcv Error    ³ Send NAK                ³ RB1 ³
  447.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  448.     ³ RB3 ³ WaitStrt ³1³ Got 'C' or NAK        ³                         ³ RB4 ³
  449.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  450.     ³     ³          ³2³ No data for 3 seconds ³ Send ACK                ³ RB3 ³
  451.     ³     ³          ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  452.     ³     ³          ³3³ 15 seconds in RB3     ³ Hang Up, Report Error   ³ exit³
  453.     ÃÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  454.     ³ RB4 ³ SendFile ³1³ Can snd requested file³ (Batch Send File BS0)   ³ RB0 ³
  455.     ³     ³   (*2)   ÃÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄ´
  456.     ³     ³          ³2³ Can't send file       ³ Send EOT                ³ RB0 ³
  457.     ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÙ
  458.     *1 - If SUB (16H) received before ETX go to RB0 to resync bark receive
  459.  
  460.     *2 - While deciding if file exists, and if the password allows it to be
  461.          sent etc., a NUL may be sent to buy 20 seconds more on the timeout
  462.          on the other end if it is using the SEAlink extended FTS-0001
  463.          specification protocol.  Sending a NUL is harmless for a strict
  464.          FTS-0001 session, but will not buy more time.
  465.